部署到 Google App Engine 时出现 CLI 400 错误
CLI 400 error deploying to Google App Engine
今天我在尝试通过命令行将我的应用程序部署到 Google App Engine 时遇到了一个新错误:
Updating module [default]...-ERROR: (gcloud.preview.app.deploy) Server responded with code [400]:
Bad Request Unexpected HTTP status 400.
Your app may not have more than 120 versions.
Please delete one of the existing versions before trying to create a new version.
我正在使用 --promote
部署到顶层,而不是创建其他版本。我该如何解决这个错误?
所以我找到了一种通过 Web GUI (https://console.developers.google.com) 来完成此操作的方法。如果您转到 "App Engine" 选项卡,则会有一个 "Versions" 选项。单击它,它将带您到版本列表。显然,每次使用 --promote
部署时都会创建一个,此外还会为您部署的每个版本创建一个。可以选择这些,然后有一个垃圾桶可以点击它们来删除它们。
虽然这不是我想要的 CLI 解决方案,但它确实有效。
如果您感兴趣,也可以通过命令行执行此操作。
gcloud preview app versions list
gcloud preview app modules delete <module_name> --version=<version_number>
2017 年更新
(另请参阅 CLI 400 错误部署到 Google App Engine
)
List all versions:
gcloud app versions list
Delete versions v1 and v2:
gcloud app versions delete v1 v2
以前的命令行答案现已弃用。备选方案如下:
要列出所有版本:
gcloud app versions list
删除版本:
gcloud app versions delete v1 v2
更多信息:https://cloud.google.com/sdk/gcloud/reference/app/versions/delete
希望对您有所帮助!
如果有人正在为此寻找 cloudbuild.yaml
更改,那么这里是示例 YAML 配置文件
steps:
- name: 'gcr.io/cloud-builders/docker'
args: [ 'build', '-t', '<dockerRepository>', '.' ]
- name: "gcr.io/cloud-builders/gcloud"
args: ["app", "deploy"]
- name: "gcr.io/cloud-builders/gcloud"
entrypoint: 'bash'
args:
- '-eEuo'
- 'pipefail'
- '-c'
- |-
gcloud app versions list --format="value(version.id)" --sort-by="~version.createTime" | tail -n +6 | xargs -r gcloud app versions delete --quiet
今天我在尝试通过命令行将我的应用程序部署到 Google App Engine 时遇到了一个新错误:
Updating module [default]...-ERROR: (gcloud.preview.app.deploy) Server responded with code [400]:
Bad Request Unexpected HTTP status 400.
Your app may not have more than 120 versions.
Please delete one of the existing versions before trying to create a new version.
我正在使用 --promote
部署到顶层,而不是创建其他版本。我该如何解决这个错误?
所以我找到了一种通过 Web GUI (https://console.developers.google.com) 来完成此操作的方法。如果您转到 "App Engine" 选项卡,则会有一个 "Versions" 选项。单击它,它将带您到版本列表。显然,每次使用 --promote
部署时都会创建一个,此外还会为您部署的每个版本创建一个。可以选择这些,然后有一个垃圾桶可以点击它们来删除它们。
虽然这不是我想要的 CLI 解决方案,但它确实有效。
如果您感兴趣,也可以通过命令行执行此操作。
gcloud preview app versions list
gcloud preview app modules delete <module_name> --version=<version_number>
2017 年更新 (另请参阅 CLI 400 错误部署到 Google App Engine )
List all versions:
gcloud app versions list
Delete versions v1 and v2:
gcloud app versions delete v1 v2
以前的命令行答案现已弃用。备选方案如下:
要列出所有版本:
gcloud app versions list
删除版本:
gcloud app versions delete v1 v2
更多信息:https://cloud.google.com/sdk/gcloud/reference/app/versions/delete
希望对您有所帮助!
如果有人正在为此寻找 cloudbuild.yaml
更改,那么这里是示例 YAML 配置文件
steps:
- name: 'gcr.io/cloud-builders/docker'
args: [ 'build', '-t', '<dockerRepository>', '.' ]
- name: "gcr.io/cloud-builders/gcloud"
args: ["app", "deploy"]
- name: "gcr.io/cloud-builders/gcloud"
entrypoint: 'bash'
args:
- '-eEuo'
- 'pipefail'
- '-c'
- |-
gcloud app versions list --format="value(version.id)" --sort-by="~version.createTime" | tail -n +6 | xargs -r gcloud app versions delete --quiet